The present disclosure relates to profiling an application.
Application profilers track and capture information about the execution of an application. Typically an application has to be specially compiled so that when the application is subsequently executed profiler information will be captured. Some application profilers operate in two steps, first capturing and storing profile data in an encoded file while an application is running. In a second step, subsequent to the application's execution, the encoded file can be decoded to derive human-readable profiler information. Thus, analysis of the profiler data occurs separately from the execution of the application. Alternatively, some profilers provide profiler data to another running process which decodes the profiler information as the application being profiled runs. However, the profiler data is limited to a subset of the information available in the application's running process.